FROM debian:12

# 创建工作目录（确保目录存在）
RUN mkdir -p /www/allinssl
WORKDIR /www/allinssl/

# 安装必要的软件包并清理缓存
RUN apt-get update && apt-get install -y --no-install-recommends \
    curl \
    ca-certificates \
    tzdata \
    && rm -rf /var/lib/apt/lists/*

# 设置时区
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

# 下载并解压AllInSSL
RUN curl -sL https://download.allinssl.com/bin/allinssl-$(uname -s)-$(uname -m).tar.gz | tar -xz -C /www/allinssl/

# 移除不再需要的软件包
RUN apt-get purge -y --auto-remove curl

# 创建入口脚本（指定工作目录路径）
RUN cat > /www/allinssl/entrypoint.sh <<'EOF'
#!/bin/sh
if [ ! -f /www/allinssl/.initialized ]; then
    echo ${ALLINSSL_USER:-allinssl} | /www/allinssl/allinssl 5
    echo ${ALLINSSL_URL:-allinssl} | /www/allinssl/allinssl 4
    echo ${ALLINSSL_PWD:-allinssldocker} | /www/allinssl/allinssl 6
    echo 8888 | /www/allinssl/allinssl 7
    touch /www/allinssl/.initialized
fi
/www/allinssl/allinssl 2
exec /www/allinssl/allinssl start
EOF

# 设置脚本权限
RUN chmod +x /www/allinssl/entrypoint.sh

# 设置入口点
ENTRYPOINT ["/www/allinssl/entrypoint.sh"]

# 暴露服务端口
EXPOSE 8888